module(...,package.seeall)
require"pins"
require"common"
CHAR_WIDTH = 24
local font
local cnt=0
-- BL = pins.setup(4,0)
-- BL(0)
-- isSleep = true
-- function sleep()
--     if isSleep then return end
--     pm.sleep("lcd_up")
--     isSleep = true
--     disp.sleep(1)
--     BL(0)
-- end
-- function wake(f)
--     if not isSleep then return end
--     pm.wake("lcd_up")
--     isSleep = nil
--     disp.sleep(0)
--     if not f then
--         page.update()
--     end
--     BL(1)
--     io.unmount(io.SDCARD)
--     io.mount(io.SDCARD)
-- end
function rgb(r,g,b)
    return (r-r%8)/8*2048 + (g-g%4)/4*32 + (b-b%8)/8
end
function text(s,x,y,r,g,b)
    if r and g and b then
        disp.setcolor(rgb(r,g,b))
    end
    disp.puttext(common.utf8ToGb2312(s),x,y)
end
--居中显示文字
function putStringCenter(s,x,y,r,g,b)
    local str = common.utf8ToGb2312(s)
    text(s,x-str:len()*((CHAR_WIDTH-CHAR_WIDTH%2)/2),y,r,g,b)
end
--靠右显示文字
function putStringRight(s,x,y,r,g,b)
    local str = common.utf8ToGb2312(s)
    text(s,x-str:len()*CHAR_WIDTH,y,r,g,b)
end
sys.taskInit(function()
    sys.waitUntil("LCD_INIT")
    sys.wait(200)
    -- wake(1)
    disp.clear()
    disp.putimage("/lua/3color.png",0,0)
    disp.update()
    sys.wait(1000)
    -- sleep()
    disp.clear()
    -- disp.putimage("/lua/head240.jpg",0,0)
    disp.update()

    -- sys.publish("START_DONE")
    -- log.info("LCD","LCD IS finished!")
    -- sys.wait(1)
    -- disp.clear()
    -- sys.publish("START_DONE")

    
    -- 显示图片
    -- c = lvgl.cont_create(nil, nil)
	-- img = lvgl.img_create(c, nil)
	-- lvgl.img_set_src(img, "/lua/head240.jpg")
	-- lvgl.obj_align(img, nil, lvgl.ALIGN_CENTER, 0, 0)
	-- lvgl.disp_load_scr(c)

    -- 显示hello二维码
    -- qrcode=lvgl.qrcode_create(lvgl.scr_act(),nil)
    -- lvgl.qrcode_set_txt(qrcode,"hello")
    -- lvgl.obj_set_size(qrcode,200,200)
    -- lvgl.obj_align(qrcode, nil, lvgl.ALIGN_CENTER, 0, 0)
    

    -- cont = lvgl.cont_create(lvgl.scr_act(), nil)
    -- lvgl.obj_set_auto_realign(cont, true)                   
    -- lvgl.obj_align(cont, nil, lvgl.ALIGN_CENTER, 0, 0) 
    -- lvgl.cont_set_fit(cont, lvgl.FIT_TIGHT)
    -- lvgl.cont_set_layout(cont, lvgl.LAYOUT_COLUMN_MID)
    
    -- -- 添加标签
    -- label = lvgl.label_create(cont, nil)
    -- lvgl.label_set_text(label, "Short text")
    
    -- label = lvgl.label_create(cont, nil)
    -- lvgl.label_set_text(label, "It is a long text")
    
    -- label = lvgl.label_create(cont, nil)
    -- lvgl.label_set_text(label, "Here is an even longer text")

    
      
    -- lvgl.label_set_text(label, "#191970 12#") 
    -- lvgl.label_set_align(label, lvgl.LABEL_ALIGN_CENTER)
    -- -- 加载外部字体
    -- local font = lvgl.font_load("/lua/lv_bahnschrift.bin")
    -- lvgl.obj_set_style_local_text_font(label, lvgl.LABEL_PART_MAIN, lvgl.STATE_DEFAULT, font)
    log.info("lvgl", lvgl.init())
   
  

    label = lvgl.label_create(lvgl.scr_act(), nil)
    
    -- lvgl.lv_obj_set_style_bg_color(label,0x000000)
    lvgl.label_set_long_mode(label, lvgl.LABEL_LONG_BREAK)
    lvgl.obj_align(label, nil, lvgl.ALIGN_CENTER, -110, -40)
    lvgl.label_set_recolor(label, true)  
    lvgl.obj_set_width(label, 240)
    -- lvgl.label_set_text(label, tostring(cnt))
    lvgl.label_set_align(label, lvgl.LABEL_ALIGN_CENTER)
    lvgl.label_set_text(label, string.format("#ff00ff速度#:%3d",cnt)) 
    font = lvgl.font_load("/lua/msyhbdt_64.bin")
    lvgl.obj_set_style_local_text_font(label, lvgl.LABEL_PART_MAIN, lvgl.STATE_DEFAULT, font)
    sys.publish("START_DONE")
end)


sys.taskInit(function()
    local str
    sys.waitUntil("START_DONE")
     while true do       
        cnt=cnt+1
        str=string.format("#0000ff 速度#:#FF0000 %3d#",cnt)--设置文字颜色
        -- log.info("LVGL",str)--调试用
        lvgl.label_set_text(label, str) 
        -- log.info("LVGL",cnt)--调试用
        sys.wait(500)--等待2000ms
        if cnt==999 then
            cnt=0            
        end
    end  
end)